/**
 * Copyright (c) 2007,中企动力华南研发中心<br>
 * All rights reserved.<br>
 */
package com.ce.pms.charge.service;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import com.ce.pms.base.service.IPmsBaseService;
import com.ce.pms.charge.vo.CollectionDetailVO;
import com.ce.pms.charge.vo.CollectionFileVO;
import com.sitechasia.webx.core.support.Page;

/**
 * 功能描述：<br>
 * @author 易贤建 创建日期：2008-9-22<br>
 */
public interface IBankCollectionService extends IPmsBaseService {

	/**
	 * 功能描述:  查询银行出盘列表<br>
	 * @param collectonfilevo
	 * @return
	 * Create author:yixianjian <br>
	 * Create on:2008-9-22  <br>
	 */
	public Page queryOutBankCollection(CollectionFileVO collectonfilevo);
	/**
	 * 功能描述:  查询银行回盘列表<br>
	 * @param collectonfilevo
	 * @return
	 * Create author:yixianjian <br>
	 * Create on:2008-9-22  <br>
	 */
	public Page queryInBankCollection(CollectionFileVO collectonfilevo);

	/**
	 * 功能描述:  银行出盘<br>
	 * @param bandId
	 * @return
	 * Create author:yixianjian <br>
	 * Create on:2008-9-23  <br>
	 * @throws Exception
	 */
	public void out(Long bandId,Long createor) throws Exception;

	/**
	 * 功能描述:根据出盘ID,获取出盘VO<br>
	 * @param keyword
	 * @return
	 * Create author:yixianjian <br>
	 * Create on:2008-10-7  <br>
	 */
	public CollectionFileVO getCollectionFileById(Long keyword);

	/**
	 * 功能描述:回盘<br>
	 * @param bankId
	 * @param outFileName
	 * @param createor
	 * @return<br>
	 * Create author:罗军林<br>
	 * Create on:2008-10-7<br>
	 * Edit author:<br>
	 * Edit on:<br>
	 * Why:<br>
	 */
	public Boolean in(Long bankId,String inFileName,HSSFWorkbook inExcel,Long createor);

	/**
	 * 功能描述:查找指定的托收信息<br>
	 * @param collectionId
	 * @return<br>
	 * Create author:罗军林<br>
	 * Create on:2008-10-14<br>
	 * Edit author:<br>
	 * Edit on:<br>
	 * Why:<br>
	 */
	public CollectionFileVO findCollectionFile(Long collectionId);


	/**
	 * 功能描述:查询通知单明细.托收ID必须填<br>
	 * @param searchVO
	 * @return<br>
	 * Create author:罗军林<br>
	 * Create on:2008-10-14<br>
	 * Edit author:<br>
	 * Edit on:<br>
	 * Why:<br>
	 */
	public Page queryCollectionDetail(CollectionDetailVO searchVO);

	/**
	 * 功能描述:查看给定的银行帐号是否出盘(不考虑时间限制,包括历史、现在的,只要出过盘)<br>
	 * @param bankNumber ，银行帐号,不能为空,为空则抛bussnessException异常
	 * @return true--已出盘,false--没出过盘
	 * Create author:yixianjian <br>
	 * Create on:2008-10-24  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public boolean isOuted(String bankNumber);
	/**
	 * 功能描述:查询给定银行帐号是否回盘<br>
	 * @param bankNumber
	 * @return true 标识不存在没有回盘的数据,false标识存在未回盘的数据
	 * Create author:yixianjian <br>
	 * Create on:2008-10-24  <br>
	 * Edit author:  <br>
	 * Edit on:    <br>
	 * Why:     <br>
	 */
	public boolean isIn(String bankNumber);
}
